package com.jzo2o.market.enums;

import com.baomidou.mybatisplus.annotation.EnumValue;
import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 优惠券状态枚举
 */
@AllArgsConstructor
@Getter
public enum ActivityStatusEnum {
    // 枚举实例：状态码(数据库存储值) + 状态名称
    NO_DISTRIBUTE(1, "待生效"),
    DISTRIBUTING(2, "进行中"),
    LOSE_EFFICACY(3, "已失效"),
    VOIDED(4, "作废");

    // 标记数据库存储的字段（MyBatis-Plus需要此注解映射枚举与数据库值）
    @EnumValue
    private final int status;
    // 状态名称（用于前端展示等业务场景）
    private final String name;

    // 判断枚举是否与传入的状态码匹配
    public boolean equals(Integer status) {
        return status != null && this.status == status;
    }
}
